package com.survey.project.research.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.survey.project.research.domain.Consumer;
import com.survey.project.research.domain.QuestionnaireQuestion;
import com.survey.project.research.domain.vo.ConsumerInVo;
import com.survey.project.research.domain.vo.ConsumerOutVo;
import com.survey.project.research.domain.vo.QuestionnaireQuestionListOutVo;
import com.survey.project.research.domain.vo.ResearchConsumerQuestionnaireDetailOutVo;

/**
 * 客户管理Mapper接口
 *
 * @author survey
 * @date 2021-05-20
 */
public interface ConsumerMapper extends BaseMapper<Consumer> {
    /**
     * 查询客户管理
     *
     * @param consumerId 客户管理ID
     * @return 客户管理
     */
    public ConsumerOutVo selectConsumerById(Long consumerId);

    /**
     * 查询客户管理列表
     *
     * @param inVo 客户管理
     * @return 客户管理集合
     */
    public List<ConsumerOutVo> selectConsumerList(ConsumerInVo inVo);

    /**
     * 新增客户管理
     *
     * @param consumer 客户管理
     * @return 结果
     */
    public int insertConsumer(Consumer consumer);

    /**
     * 修改客户管理
     *
     * @param consumer 客户管理
     * @return 结果
     */
    public int updateConsumer(Consumer consumer);

    /**
     * 删除客户管理
     *
     * @param consumerId 客户管理ID
     * @return 结果
     */
    public int deleteConsumerById(Long consumerId);

    /**
     * 批量删除客户管理
     *
     * @param consumerIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteConsumerByIds(Long[] consumerIds);

    List<ResearchConsumerQuestionnaireDetailOutVo> questionnaireDetail(Long consumerId);

    List<ConsumerOutVo> selectConsumerListByQuestionnaireId(Long questionnaireId);
}
